home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Collection of Tools & Utilities
/
Collection of Tools and Utilities.iso
/
bbsutil
/
bsrc_250.zip
/
ASYNC.H
< prev
next >
Wrap
Text File
|
1991-09-15
|
7KB
|
155 lines
#ifndef _ASYNC_H_INCLUDED
#define _ASYNC_H_INCLUDED
/*--------------------------------------------------------------------------*/
/* */
/* */
/* ------------ Bit-Bucket Software, Co. */
/* \ 10001101 / Writers and Distributors of */
/* \ 011110 / Freely Available<tm> Software. */
/* \ 1011 / */
/* ------ */
/* */
/* (C) Copyright 1987-91, Bit Bucket Software Co., a Delaware Corporation. */
/* */
/* */
/* This header file was written by Peter Fitzsimmons */
/* OS/2 Communications definitions for BinkleyTerm */
/* */
/* */
/* For complete details of the licensing restrictions, please refer */
/* to the License agreement, which is published in its entirety in */
/* the MAKEFILE and BT.C, and also contained in the file LICENSE.250. */
/* */
/* USE OF THIS FILE IS SUBJECT TO THE RESTRICTIONS CONTAINED IN THE */
/* BINKLEYTERM LICENSING AGREEMENT. IF YOU DO NOT FIND THE TEXT OF */
/* THIS AGREEMENT IN ANY OF THE AFOREMENTIONED FILES, OR IF YOU DO */
/* NOT HAVE THESE FILES, YOU SHOULD IMMEDIATELY CONTACT BIT BUCKET */
/* SOFTWARE CO. AT ONE OF THE ADDRESSES LISTED BELOW. IN NO EVENT */
/* SHOULD YOU PROCEED TO USE THIS FILE WITHOUT HAVING ACCEPTED THE */
/* TERMS OF THE BINKLEYTERM LICENSING AGREEMENT, OR SUCH OTHER */
/* AGREEMENT AS YOU ARE ABLE TO REACH WITH BIT BUCKET SOFTWARE, CO. */
/* */
/* */
/* You can contact Bit Bucket Software Co. at any one of the following */
/* addresses: */
/* */
/* Bit Bucket Software Co. FidoNet 1:104/501, 1:343/491 */
/* P.O. Box 460398 AlterNet 7:491/0 */
/* Aurora, CO 80046 BBS-Net 86:2030/1 */
/* Internet f491.n343.z1.fidonet.org */
/* */
/* Please feel free to contact us at any time to share your comments about */
/* our software and/or licensing policies. */
/* */
/*--------------------------------------------------------------------------*/
#define TRUE 1
#define FALSE 0
#define DCD_ON 0x80
#define ERROR_MORE_DATA 234
#define IOCTL_ASYNC 0x0001
#define IOCTL_SCR_AND_PTRDRAW 0x0003
#define IOCTL_KEYBOARD 0x0004
#define IOCTL_PRINTER 0x0005
#define IOCTL_LIGHTPEN 0x0006
#define IOCTL_POINTINGDEVICE 0x0007
#define IOCTL_DISK 0x0008
#define IOCTL_PHYSICALDISK 0x0009
#define IOCTL_MONITOR 0x000A
#define IOCTL_GENERAL 0x000B
/* General Device Control */
#define DEV_FLUSHINPUT 0x0001
#define DEV_FLUSHOUTPUT 0x0002
#define DEV_QUERYMONSUPPORT 0x0060
/* ASYNC_GETCOMMERROR, ASYNC_SETBREAKOFF, ASYNC_SETBREAKON, ASYNC_SETMODEMCTRL */
#define RX_QUE_OVERRUN 0x0001
#define RX_HARDWARE_OVERRUN 0x0002
#define PARITY_ERROR 0x0004
#define FRAMING_ERROR 0x0008
/* ASYNC_GETCOMMEVENT */
#define CHAR_RECEIVED 0x0001
#define LAST_CHAR_SENT 0x0004
#define CTS_CHANGED 0x0008
#define DSR_CHANGED 0x0010
#define DCD_CHANGED 0x0020
#define BREAK_DETECTED 0x0040
#define ERROR_OCCURRED 0x0080
#define RI_DETECTED 0x0100
/* ASYNC_GETCOMMSTATUS */
#define TX_WAITING_FOR_CTS 0x0001
#define TX_WAITING_FOR_DSR 0x0002
#define TX_WAITING_FOR_DCD 0x0004
#define TX_WAITING_FOR_XON 0x0008
#define TX_WAITING_TO_SEND_XON 0x0010
#define TX_WAITING_WHILE_BREAK_ON 0x0020
#define TX_WAITING_TO_SEND_IMM 0x0040
#define RX_WAITING_FOR_DSR 0x0080
/* ASYNC_GETLINESTATUS */
#define WRITE_REQUEST_QUEUED 0x0001
#define DATA_IN_TX_QUE 0x0002
#define HARDWARE_TRANSMITTING 0x0004
#define CHAR_READY_TO_SEND_IMM 0x0008
#define WAITING_TO_SEND_XON 0x0010
#define WAITING_TO_SEND_XOFF 0x0020
/* fbCtlHndShake */
#define MODE_DTR_CONTROL 0x01
#define MODE_DTR_HANDSHAKE 0x02
#define MODE_CTS_HANDSHAKE 0x08
#define MODE_DSR_HANDSHAKE 0x10
#define MODE_DCD_HANDSHAKE 0x20
#define MODE_DSR_SENSITIVITY 0x40
/* fbFlowReplace */
#define MODE_AUTO_TRANSMIT 0x01
#define MODE_AUTO_RECEIVE 0x02
#define MODE_ERROR_CHAR 0x04
#define MODE_NULL_STRIPPING 0x08
#define MODE_BREAK_CHAR 0x10
#define MODE_RTS_CONTROL 0x40
#define MODE_RTS_HANDSHAKE 0x80
#define MODE_TRANSMIT_TOGGLE 0xC0
/* fbTimeout */
#define MODE_NO_WRITE_TIMEOUT 0x01
#define MODE_READ_TIMEOUT 0x02
#define MODE_WAIT_READ_TIMEOUT 0x04
#define MODE_NOWAIT_READ_TIMEOUT 0x06
#if !defined (BSEDEV_INCLUDED)
typedef struct _LINECONTROL { /* lnctl */
BYTE bDataBits;
BYTE bParity;
BYTE bStopBits;
BYTE fTransBreak;
} LINECONTROL;
typedef LINECONTROL FAR *PLINECONTROL;
typedef struct _MODEMSTATUS { /* mdmst */
BYTE fbModemOn;
BYTE fbModemOff;
} MODEMSTATUS;
typedef MODEMSTATUS FAR *PMODEMSTATUS;
#endif /* BSEDEV_INCLUDED not defined */
extern int com_getbuf(void);
extern bool com_in_check(void);
#endif /* _ASYNC_H_INCLUDED */